package br.com.sisat.service;

import java.util.List;

import br.com.sisat.modelo.EspecialidadeDTO;
import br.com.sisat.modelo.PacienteDTO;
import br.com.sisat.modelo.ProntuarioDTO;
import br.com.sisat.persistencia.DAO.ProntuarioDAO;
import br.com.sisat.util.ObjectUtil;

public class ProntuarioService {

	private static ProntuarioService service;
	
	public static ProntuarioService getInstance(){
		if(ObjectUtil.isEmpty(service)){
			service = new ProntuarioService();
		}
		return service;
	}

	public void executarIncluir(ProntuarioDTO prontuarioDTO) {
		try {
			ProntuarioDAO.getInstance().executarIncluir(prontuarioDTO);
		} catch (Exception e) {
			e.printStackTrace();
		}
		
	}

	public List<ProntuarioDTO> recuperarProntuarios(ProntuarioDTO prontuarioDTO) {
		try {
			return ProntuarioDAO.getInstance().recuperarProntuarios(prontuarioDTO);
		} catch (Exception e) {
			e.printStackTrace();
		}
		return null;
	}

	public List<EspecialidadeDTO> recuperarEspecialidades() {
		try {
			return ProntuarioDAO.getInstance().recuperarEspecialidades();
		} catch (Exception e) {
			e.printStackTrace();
		}
		return null;
	}

	public void atualizaConsulta(PacienteDTO pacienteDTO, Long nuStatus, Long statusAntigo) {
		try {
			Long idConsulta = ProntuarioDAO.getInstance().recuperarConsulta(pacienteDTO, statusAntigo);
			if(idConsulta != null){
				ProntuarioDAO.getInstance().atualizaStatus(idConsulta, nuStatus);
			}
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	
}
